package com.smart.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.smart.model.customdo.ProjectADO;
import com.smart.model.domain.HotWorkDO;
import com.smart.model.request.HotWorkRequest;
import com.smart.model.vo.HotWorkVO;
import com.smart.model.vo.ListQuerySuperviseCount;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Map;

/**
 * @author zhanghong
 */
public interface HotWorkService extends IService<HotWorkDO> {

    /**
     * 根据主键查询
     * @param id
     * @return
     */
    HotWorkVO getDetailByKey(long id);
    /**
     * 分页查询
     * @param request
     * @return
     */
    PageInfo<HotWorkVO> pageDetailedList(HotWorkRequest request, Pageable pageable);
    /**
     * 列表f分页查询
     * @param request
     * @return
     */
    com.smart.common.PageInfo listQuerySupervise(HotWorkRequest request);
    /**
     * 新增
     * @param request
     * @return
     */
    Map<String, Object> add(HotWorkRequest request);
    /**
     * 根据主键更新
     * @param request
     * @return
     */
    Boolean updateByKey(HotWorkRequest request);
    /**
     * 根据主键删除
     * @param id
     * @return
     */
    Boolean deleteByKey(long id);

    Object verify(String userName);

    PageInfo<List<ProjectADO>> listQueryManage(HotWorkRequest request, Pageable pageable);

    ListQuerySuperviseCount listQuerySuperviseCount(HotWorkRequest request);
}
